package it.duecaffe.claysoftware.interventi.client;

import it.duecaffe.claysoftware.interventi.shared.models.UtenteModel;

import java.util.Date;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface LogicFacadeAsync {

	/**
	 * Consente il login all'applicazione
	 * @param username nome utente
	 * @param password password
	 * @param callback
	 */
	void login(String username, String password, AsyncCallback<UtenteModel> callback);

	/**
	 * Inserisce o modifica un intervento nella tabella dedicata
	 * @param dataIntervento data dell'intervento
	 * @param codiceTecnico codice del tecnico
	 * @param codiceCliente codice del cliente
	 * @param descrizione descrizione dell'intervento
	 * @param oraInizio ora di inizio
	 * @param oraFine ora di fine
	 * @param pausa eventuale pausa
	 * @param dirittoChiamata diritto di chiamata
	 * @param callback
	 */
	void mergeIntervento(Date dataIntervento, String codiceTecnico, String codiceCliente, String descrizione, float oraInizio, float oraFine, float pausa, boolean dirittoChiamata,
			AsyncCallback<Void> callback);
	
	

}
